バージョン

Add(Boolean,Object[]) メソッド

新しい行をコレクションに追加します。
シンタックス
'宣言
 
Public Overloads Function Add( _
   ByVal raiseAddEvents As Boolean, _
   ByVal cellValues() As Object _
) As UltraDataRow
public UltraDataRow Add( 
   bool raiseAddEvents,
   object[] cellValues
)

パラメータ

raiseAddEvents
RowAdding イベントと RowAdded イベントを発生させるかどうかを指定します。
cellValues
新しい行を初期化するためのセル値を指定します。配列がnullの場合、配列の要素数が列の数より多い場合、または値を対応する列のデータ型に変換できない場合は、例外がスローされます。

戻り値の型

コレクションに追加された新しい行を返します。
解説

Add メソッドは、新しい行を作成してコレクションに追加します。raiseAddEvents 引数に True を指定すると、RowAdding イベントと RowAdded イベントが発生します。RowAdding イベントをキャンセルすると、コレクションに新しい行は追加されず、このメソッドはnullを返します。

使用例
Imports Infragistics.Shared
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinDataSource


    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles button1.Click
        Dim ds As UltraDataSource = New UltraDataSource()

        Dim col1 As UltraDataColumn = ds.Band.Columns.Add("ID", GetType(Integer))
        Dim col2 As UltraDataColumn = ds.Band.Columns.Add("Col2", GetType(String))

        Dim row As UltraDataRow
        Dim i As Integer
        For i = 0 To 5 - 1
            ' Look below where we call the Insert method for explanation on 
            ' what raiseAddEvents parameter does.
            row = ds.Rows.Add(True, New Object() {i, "Val " & i})
        Next

        ' Insert a row at index 0. A new row will be created and added to the
        ' collection at the specified index. RaiseAddEvents parameter of Add and
        ' Insert methods indicates whether the UltraDataSource should raise it's
        ' own RowAdding and RowAdded events. It does not indicate whether
        ' IBindingList.ListChanged event is raised or not.
        ' IBindingList.ListChanged event will always be raised regardless of the
        ' value of this parameter. This is useful when you have some logic in
        ' those event handlers for initializing new rows and you want that logic
        ' to be executed for the new row that you are inserting. If you use the
        ' overloads of Add or Insert that do not take raiseAddEvents parameter
        ' then add events won't be raised.
        row = ds.Rows.Insert(0, False, New Object() {-1, "Val -1"})

        ' Remove the inserted row. RaiseDeleteEvents parameter is analogous to
        ' the raiseAddEvents parameter of the Add and Insert methods. Look above
        ' where we call Insert for an explanation.
        row.ParentCollection.Remove(row, False)

        ' To check if a row is in a collection, use the Contains method.
        ' Following should print out false since the row has been deleted.
        Debug.WriteLine("Is deleted row in collection ? " & row.ParentCollection.Contains(row))

        ' A deleted row will have the index of -1. Following should print out -1
        ' since the row is not in the collection anymore. Row's Index property
        ' and IndexOf methods give the same results.
        Debug.WriteLine("Deleted row's index is " & row.Index)
        Debug.WriteLine("Deleted row's index is " & row.ParentCollection.IndexOf(row))

        ' You can also use the RemoveAt method to remove a row by specifying the 
        ' index of the row instead of the row itself.
        ds.Rows.RemoveAt(0, False)

        ' Print out the row count. This should print 4 as the row count since we
        ' added 5 using Add method in the for loop above and then added one
        ' using the Insert method above and then removed two using Remove and
        ' RemoveAt methods each.
        Debug.WriteLine("Row count = " & ds.Rows.Count)

        ' You can remove all rows from a row collection using Clear method. This
        ' is more efficient than deleting individual rows using Remove or
        ' RemoveAt methods.
        ds.Rows.Clear()

        ' You can use the SetCount method to add multiple rows at once. This can
        ' be more efficient than adding individual rows using Add method when
        ' adding a lot of rows.
        ds.Rows.SetCount(5)

        ' Add another 5 rows by setting the count to 10. Previously we added 5
        ' rows when we called SetCount( 5 ) above. Calling SetCount with 10 will
        ' add another 5 rows so that the new count becomes 10.
        ds.Rows.SetCount(10)

        ' Following line should print out 10.
        Debug.WriteLine("Row count = " & ds.Rows.Count)

        ds.Rows.SetCount(100000)

        ' Following line should print out 100000.
        Debug.WriteLine("Row count = " & ds.Rows.Count)
    End Sub
using Infragistics.Shared;
using Infragistics.Win;
using Infragistics.Win.UltraWinDataSource;
using System.Diagnostics;


		private void button1_Click(object sender, System.EventArgs e)
		{
			UltraDataSource ds = new UltraDataSource( );

			UltraDataColumn col1 = ds.Band.Columns.Add( "ID", typeof( int ) );
			UltraDataColumn col2 = ds.Band.Columns.Add( "Col2", typeof( string ) );

			UltraDataRow row;
			for ( int i = 0; i < 5; i++ )
			{
				// Look below where we call the Insert method for explanation on 
				// what raiseAddEvents parameter does.
				row = ds.Rows.Add( true, new object[] { i, "Val " + i } );
			}

			// Insert a row at index 0. A new row will be created and added to the
			// collection at the specified index. RaiseAddEvents parameter of Add and
			// Insert methods indicates whether the UltraDataSource should raise it's
			// own RowAdding and RowAdded events. It does not indicate whether
			// IBindingList.ListChanged event is raised or not.
			// IBindingList.ListChanged event will always be raised regardless of the
			// value of this parameter. This is useful when you have some logic in
			// those event handlers for initializing new rows and you want that logic
			// to be executed for the new row that you are inserting. If you use the
			// overloads of Add or Insert that do not take raiseAddEvents parameter
			// then add events won't be raised.
			row = ds.Rows.Insert( 0, false, new object[] { -1, "Val -1" } );

			// Remove the inserted row. RaiseDeleteEvents parameter is analogous to
			// the raiseAddEvents parameter of the Add and Insert methods. Look above
			// where we call Insert for an explanation.
			row.ParentCollection.Remove( row, false );

			// To check if a row is in a collection, use the Contains method.
			// Following should print out false since the row has been deleted.
			Debug.WriteLine( "Is deleted row in collection ? " + row.ParentCollection.Contains( row ) );

			// A deleted row will have the index of -1. Following should print out -1
			// since the row is not in the collection anymore. Row's Index property
			// and IndexOf methods give the same results.
			Debug.WriteLine( "Deleted row's index is " + row.Index );
			Debug.WriteLine( "Deleted row's index is " + row.ParentCollection.IndexOf( row ) );

			// You can also use the RemoveAt method to remove a row by specifying the 
			// index of the row instead of the row itself.
			ds.Rows.RemoveAt( 0, false );

			// Print out the row count. This should print 4 as the row count since we
			// added 5 using Add method in the for loop above and then added one
			// using the Insert method above and then removed two using Remove and
			// RemoveAt methods each.
			Debug.WriteLine( "Row count = " + ds.Rows.Count );

			// You can remove all rows from a row collection using Clear method. This
			// is more efficient than deleting individual rows using Remove or
			// RemoveAt methods.
			ds.Rows.Clear( );

			// You can use the SetCount method to add multiple rows at once. This can
			// be more efficient than adding individual rows using Add method when
			// adding a lot of rows.
			ds.Rows.SetCount( 5 );

			// Add another 5 rows by setting the count to 10. Previously we added 5
			// rows when we called SetCount( 5 ) above. Calling SetCount with 10 will
			// add another 5 rows so that the new count becomes 10.
			ds.Rows.SetCount( 10 );

			// Following line should print out 10.
			Debug.WriteLine( "Row count = " + ds.Rows.Count );

			ds.Rows.SetCount( 100000 );

			// Following line should print out 100000.
			Debug.WriteLine( "Row count = " + ds.Rows.Count );
		}
参照